- JNI aes256加密,hmac256签名及读取应用签名demo
- https://github.com/cigk/Android_Hmacs256_Aes256_Demo
Jni 应用开发流程
1. 定义Native 接口
1 | public class JniUtil { |
2. javah -jin “全类名” 生成头文件
执行javah命令时必须在src根目录,如”E:\KKY\android_assistant\app\src\main\java\”,否则会报错, 生成的文件位于当前目录下,接口文件如下:
1 | /* DO NOT EDIT THIS FILE - it is machine generated */ |
3. 实现头文件
1 | JNIEXPORT jstring JNICALL Java_com_kuaikuaiyu_assistant_utils_JniUtil_sign |
Jni开发场景
1. Java调用c方法
接口方法
1 | /** |
头文件
1 | /* DO NOT EDIT THIS FILE - it is machine generated */ |
c代码实现
1 |
|
2. c回调java方法
接口定义
5个方法对应5中应用场景,方法说明在c实现里
1 | public native void callMethod1(); |
c实现
1 | #include "com_example_ndkcallback_DataProvider.h" |